home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 33 / Amiga Format AFCD33 (Issue 117, Dec 1998).iso / -seriously_amiga- / graphics / visualengineer / arexx / visualtexturebar.rexx < prev   
OS/2 REXX Batch file  |  1998-09-07  |  3KB  |  179 lines

  1. /*
  2.  
  3.    v1.00 Visual TextureBar
  4.  
  5.    Marko Seppänen
  6.    marko.seppanen@wwnet.fi
  7.  
  8. */
  9.  
  10.  
  11. address IMAGEENGINEER
  12.  
  13. Options results
  14. signal on error            /* Setup a place for errors to go */
  15.  
  16. if arg()=0 then exit
  17. x0=arg(1)
  18.  
  19. MARK x0 PRIMARY
  20. PROJECT_INFO x0 WIDTH
  21. width=result
  22. PROJECT_INFO x0 HEIGHT
  23. height=result
  24.  
  25. OPEN "ie:alpha/gradient.alpha" COLOUR
  26. grad=result
  27.  
  28. SCALE grad width height BEST
  29. grad2=result
  30.  
  31. CLOSE grad
  32.  
  33. 'REQUEST "What kinda would you like?" "Grad|Grad2|Colour|3D|Shiny|Cancel"'
  34. tulos=result
  35.  
  36. select
  37.   when tulos == 1 then do
  38.  
  39.     REFLECT_X grad2
  40.     grad3=result
  41.  
  42.     CLOSE grad2
  43.  
  44.     MARK x0 ALPHA
  45.     MARK grad3 SECONDARY
  46.  
  47.     COMPOSITE 0 0 ADD
  48.  
  49.   end
  50.  
  51.   when tulos == 2 then do
  52.  
  53.     MARK x0 ALPHA
  54.     MARK grad2 SECONDARY
  55.  
  56.     COMPOSITE 0 0 MULTIPLY
  57.  
  58.   end
  59.  
  60.  
  61.   when tulos == 3 then do
  62.  
  63.     REFLECT_X grad2
  64.     grad3=result
  65.  
  66.     CLOSE grad2
  67.  
  68.     MARK x0 ALPHA
  69.     MARK grad3 SECONDARY
  70.  
  71.     COMPOSITE 0 0 ADD
  72.     x1=result
  73.  
  74.     SCALE grad3 width/4 height BEST
  75.     grad4=result
  76.  
  77.     CLOSE grad3
  78.  
  79.     REFLECT_X grad4
  80.     grad5=result
  81.  
  82.     CLOSE grad4
  83.  
  84.     MARK grad5 ALPHA
  85.     MARK grad5 PRIMARY
  86.     MARK x1 SECONDARY
  87.  
  88.     COMPOSITE 0 0 DIFFERENCE
  89.  
  90.     CLOSE grad5
  91.     CLOSE x1
  92.  
  93.   end
  94.  
  95.  
  96.   when tulos == 4 then do
  97.  
  98.     REFLECT_X grad2
  99.     grad3=result
  100.  
  101.     CLOSE grad2
  102.  
  103.     MARK x0 ALPHA
  104.     MARK grad3 SECONDARY
  105.  
  106.     COMPOSITE 0 0 ADD
  107.     x1=result
  108.  
  109.     SCALE grad3 width/4 height BEST
  110.     grad4=result
  111.  
  112.     CLOSE grad3
  113.  
  114.     REFLECT_X grad4
  115.     grad5=result
  116.  
  117.     CLOSE grad4
  118.  
  119.     MARK grad5 ALPHA
  120.     MARK grad5 PRIMARY
  121.     MARK x1 SECONDARY
  122.  
  123.     COMPOSITE "-"width/6 0 DIFFERENCE
  124.  
  125.     CLOSE grad5
  126.     CLOSE x1
  127.  
  128.   end
  129.  
  130.  
  131.   when tulos == 5 then do
  132.  
  133.     MARK x0 ALPHA
  134.     MARK grad2 SECONDARY
  135.  
  136.     COMPOSITE 0 0 MULTIPLY
  137.     x1=result
  138.  
  139.     SCALE grad2 width/2 height BEST
  140.     grad3=result
  141.  
  142.     CLOSE grad2
  143.  
  144.     MARK grad3 PRIMARY
  145.     MARK grad3 ALPHA
  146.     MARK x1 SECONDARY
  147.  
  148.     COMPOSITE "-"width/2-width/12 0 ADD
  149.  
  150.     CLOSE x1
  151.     CLOSE grad3
  152.  
  153.   end
  154.  
  155.  
  156. otherwise
  157.   exit
  158. end
  159.  
  160. exit
  161.  
  162. /*******************************************************************/
  163. /* This is where control goes when an error code is returned by IE */
  164. /* It puts up a message saying what happened and on which line     */
  165. /*******************************************************************/
  166. error:
  167. if RC=5 then do            /* Did the user just cancel us? */
  168.     IE_TO_FRONT
  169.     LAST_ERROR
  170.     'REQUEST "'||RESULT||'"'
  171.     exit
  172. end
  173. else do
  174.     IE_TO_FRONT
  175.     LAST_ERROR
  176.     'REQUEST "Error detected!!!'||D2C(10)||'Image Engineer error message is as follows'||D2C(10)||result||D2C(10)||'Script failed on line '||SIGL||'"' 'Doh!'
  177.     exit
  178. end
  179.